Six ways to automatically find software bugs

نویسنده

  • FAN Gang
چکیده

With the rapid development of hardware and the emerging of smart devices like smart phones and wearable gadgets, software, the soul of those devices, becomes more and more important. However, program bugs, which often cause system failure and misbehaviors, is one of the most severe stumbling blocks for even further development of those technologies. Since automatically detecting all bugs in a program is generally undecidable[9], many novel techniques emerged to conquer this program from different aspects and with different tradeoffs. Many of these techniques are commercialized and hence further prove their practical value. In this report, we survey six representative classes of them, and discuss their advantages and limitations.

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

perf fuzzer: Targeted Fuzzing of the perf event open() System Call

Fuzzing is a process where random, almost valid, input streams are automatically generated and fed into computer systems in order to test the robustness of userexposed interfaces. We fuzz the Linux kernel system call interface; unlike previous work that attempts to generically fuzz all of an operating system’s system calls, we explore the effectiveness of using specific domain knowledge and foc...

متن کامل

Simple and Effective Static Analysis to Find Bugs

Title of dissertation: SIMPLE AND EFFECTIVE STATIC ANALYSIS TO FIND BUGS David H. Hovemeyer, Doctor of Philosophy, 2005 Dissertation directed by: Professor William W. Pugh Department of Computer Science Much research in recent years has focused on using static analysis to find bugs in software. Many new approaches employing sophisticated program analysis techniques—inter-procedural, context-sen...

متن کامل

Techniques for Identifying Elusive Corner-Case Bugs in Systems Software

Modern software is plagued by elusive corner-case bugs (e.g., security vulnerabilities). There are no scalable, automated ways of finding them, therefore such bugs can remain hidden until software is deployed in production. This thesis proposes approaches to solve this problem. First, we present black-box and white-box fault injection mechanisms, which allow developers to test the behavior of t...

متن کامل

Techniques for Model Inference and Bug Finding

Techniques for Model Inference and Bug Finding by Chia Yuan Cho Doctor of Philosophy in Computer Science University of California, Berkeley Professor Dawn Xiaodong Song, Chair Security bugs in network-based applications allow an attacker to compromise a system from the network. Existing techniques to find bugs in network-based applications are limited because the rules by which a program intera...

متن کامل

ASTOR: A Program Repair Library for Java

During the last years, the software engineering research community has proposed approaches for automatically repairing software bugs. Unfortunately, many software artifacts born from this research are not available for repairing Java programs. To-reimplement those approaches from scratch is costly. To facilitate experimental replications and comparative evaluations, we present Astor, a publicly...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2015